package com.alinu.workbench.mapper;

import com.alinu.workbench.domain.Activity;

import java.util.List;
import java.util.Map;

/**
 * @author chenzuwei
 * @date 2021/3/15
 * @description
 */
public interface ActivityMapper {

    /**
     * 保存一个市场活动
     *
     * @param activity 市场活动
     * @return int
     */
    int saveActivity(Activity activity);

    /**
     * 获取市场活动列表
     *
     * @param params 参数
     * @return 市场活动列表
     */
    List<Activity> getActivityList(Map<String, Object> params);

    /**
     * 查询总数
     *
     * @param params 参数
     * @return 总数
     */
    int getTotal(Map<String, Object> params);

    /**
     * 删除市场活动
     *
     * @param params 删除条件参数
     * @return 删除的数量
     */
    int deleteActivity(Map<String, Object> params);

    /**
     * 查询某个市场活动
     *
     * @param id id
     * @return activity对象
     */
    Activity findActivity(String id);

    /**
     * 更新市场活动数据
     *
     * @param activity 对象
     * @return 更新影响条数
     */
    int updateActivity(Activity activity);

    /**
     * 根据线索id获取活动列表
     *
     * @param clueId 线索id
     * @return 活动列表
     */
    List<Activity> findActivitiesByClueId(String clueId);

    /**
     * 获取市场活动通过活动名称
     *
     * @param params 参数
     * @return 活动列表
     */
    List<Activity> getActivitiesByName(Map<String, Object> params);

    List<Activity> findActivityByName(String name);
}
